package com.ztesoft.web.baseconfig.db.dao.mapper;

import com.ztesoft.web.baseconfig.db.arg.DmStrategyDataobjRelArg;
import com.ztesoft.web.baseconfig.db.po.DmStrategyDataobjRelPO;

import java.math.*;
import java.util.*;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

public interface IDmStrategyDataobjRelMapper {
    
    List<Integer> countByArg(DmStrategyDataobjRelArg arg);

    List<DmStrategyDataobjRelPO> selectByArg(DmStrategyDataobjRelArg arg);
    
    List<DmStrategyDataobjRelPO> selectByStrategyId(Integer dmStrategyId);
    
    List<DmStrategyDataobjRelPO> selectByDmTaskId(Integer dmTaskId);

    DmStrategyDataobjRelPO selectByPrimaryKey(Integer id);

    List<DmStrategyDataobjRelPO> selectByArgAndPage(DmStrategyDataobjRelArg arg, RowBounds rowBound);

    int insert(DmStrategyDataobjRelPO record);

    int insertSelective(DmStrategyDataobjRelPO record);

    int insertBatch(@Param("list") List<DmStrategyDataobjRelPO> records);

    int updateByArgSelective(@Param("record") DmStrategyDataobjRelPO record,
            @Param("arg") DmStrategyDataobjRelArg arg);
    
    int updateDToA(Integer id);
    int updateTo00X(Integer id);

    int updateByArg(@Param("record") DmStrategyDataobjRelPO record,
            @Param("arg") DmStrategyDataobjRelArg arg);

    int updateByPrimaryKeySelective(DmStrategyDataobjRelPO record);

    int updateByPrimaryKey(DmStrategyDataobjRelPO record);
    
    int deleteByArg(DmStrategyDataobjRelArg arg);
    
    int deleteByPrimaryKey(DmStrategyDataobjRelPO record);
    
}